Skip to content

Conversation

jansvoboda11
Copy link

No description provided.

…plicitly built PCM files

With implicit modules, it's impossible to load a PCM file that was built using different command-line macro definitions. This is guaranteed by the fact that they contribute to the context hash. This means that we don't need to store those macros into PCM files for validation purposes. This patch avoids serializing them in those circumstances, since there's no other use for command-line macro definitions (besides "-module-file-info").

For a typical Apple project, this speeds up the dependency scan by 5.6% and shrinks the cache with scanning PCMs by 26%.

Reviewed By: benlangmuir

Differential Revision: https://reviews.llvm.org/D158136
@jansvoboda11 jansvoboda11 requested a review from artemcm August 17, 2023 23:08
@jansvoboda11
Copy link
Author

@swift-ci please test

@jansvoboda11
Copy link
Author

Windows failure looks intermittent, trying again...

@jansvoboda11
Copy link
Author

@swift-ci Please test Windows platform

@jansvoboda11 jansvoboda11 merged commit 7a378d8 into stable/20221013 Aug 21, 2023
@jansvoboda11 jansvoboda11 deleted the jan_svoboda/stable-20221013-cmdline-macros-in-pcm-cherry-pick branch August 21, 2023 19:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant